'''
1. 通过本周的学习和自己查阅，你知道linux有哪些发行版本？
目前的发行版有：Ubuntu、RedHat、CentOS、Debian、Fedora、SuSE、OpenSUSE、Arch Linux等
2. 实现一个简易的计算器，效果如下：
运行后提示让用户输入一个数字
   1. 提示输入操作符（+ - * /）
   2. 再次提示输入一个数字
   3. 打印计算结果
   4. 在不退出程序的前提下，可以允许用户继续输入新一组数据计算
'''

def input_number1():
    while True:
        num1 = input("请输入第1个数字: ")
        if num1.upper() == "Q" or num1.isdecimal(): 
            return num1
        else:
            print("必须输入数字，请重新输入。")

def input_number2():
    while True:
        num2 = input("请输入第2个数字: ")
        if num2.upper() == "Q" or num2.isdecimal():
            return num2
        else:
            print("必须输入数字，请重新输入。")

def input_operator():
    while True:
        oper = input("请输入操作符(+ - * /)：")
        if oper.upper() == "Q" or oper in ['+', '-', '*', '/']: 
            return oper
        else:
            print("请输入正确的操作符: + - * /")
    
def simple_calculator(num1, oper, num2):
    if oper == "+":
        print(num1 + num2)
    elif oper == "-":
        print(num1 - num2)
    elif oper == "*":
        print(num1 * num2)
    elif oper == "/":
        if num2 == 0:
            print("Error: 除数不能为0")
        else:
            print(num1 / num2) 

if __name__ == '__main__':
    while True:
        num1 = input_number1()
        if num1.upper() == "Q":
            break
        num1 = int(num1)
        oper = input_operator()
        if oper.upper() == "Q":
            break
        num2 = input_number2()
        if num2.upper() == "Q":
            break
        num2 = int(num2)
        simple_calculator(num1, oper, num2)